Page History: Order Mass Status Request
Compare Page Revisions
Page Revision: 2016/07/21 16:01
Order Mass Status RequestThe Order Mass Status Request message (MsgType=AF) is used by the T4 FIX API to list open orders. Request can be pinpointed for a specific Account (Tag 1), User (Tag 553), SecurityID (Tag 48), Symbol (Tag 55) and Security Exchange (Tag 207). Orders can also be filtered by Time-in-Force (Tag 59). UserName filtering (Tag 553) is only available under the Multi-Trader mode (Tag 372=UCG) of the
Logon message.
To list open orders, this message provides an alternative mechanism to the same functionality available with the
Collateral Inquiry message.
The Order Mass Status Request message is always responded with the
Execution Report message even if the request yields no open orders.
This message covers open orders with all security types including outright futures, futures options, spreads and multi-leg strategies.
Identifying specific Markets, Contracts and ExchangesTo list open orders, the order mass status request type (Tag 585) must always be specified. Open orders for all markets, accounts and users can be requested with MassStatusReqType equal to "all" (Tag 585=7).
Open orders for a specific market can be queried with Tag 585 = 1 and the SecurityID (Tag 48) set to the desired market id. A specific contract (with multiple markets) can be queried with Tag 585=3 and the Symbol (Tag 55) set to the desired contract id value. If orders for a specific exchange (with multiple contracts) are needed, the mass order status request type would be set to Exchange (Tag 585=5) and the SecurityExchange (Tag 207) set to the desired exchange id value.
To discern what values to use for the filter tags (48, 55, 207),
Security Definition requests can list the current markets, contracts and exchanges.
Identifying specific Accounts, Users and Time-In-ForceThe result set obtained from the order mass status request type (Tag 585) can further be filtered by Account (Tag 1) and User (Tag 553) with the
optional Order status request type (Tag 5000).
To request open orders for a specific account, the Order Status Request (Tag 5000) is set to 101 with the Account (Tag 1) set to the (user-authorized) account. To list open orders for a specific user (Tag 553), the Order Status Request (Tag 5000) is set to 100 with the UserName (Tag 553) set to the user. The latter (UserName) request is only available in Multi-Trader mode (see
Logon message). It can only be processed for the Master User - which can only inquire for open orders executed by logged-in traders.
Open orders can also be filtered optionally by its Time-in-Force (Tag 59). See the Message Dictionary below for valid values. If the Time-in-Force tag is not specified, open orders for all time-in-force will be listed.
Important ConsiderationsIt is recommended to the FIX API client to track of its own open orders collection via the client's order entry mechanism. Like
Collateral Inquiries, the Order Mass Status Request message is provided for reconciliation of the client's open order collection. Also, open orders are presented automatically at the start of the FIX session if AutoPortFolio Refresh is not disabled (Tag 372=d) in the
Logon message.
Message Dictionary
Tag | Field Name | Req'd | Comments |
---|
| Standard Header | Y | MsgType = AF |
584 | MassStatusReqID | Y | Unique identifier for Order Mass Status Request. Assigned by the FIX API client. |
585 | MassStatusReqType | Y | Mass Status Request type. Open orders will be returned for the following options: |
| | | 1 = Market. Open orders are listed for only the market identified by Security ID (Tag 48). |
| | | 3 = Contract. Open orders are listed for only the contract identified by Symbol (Tag 55). |
| | | 5 = Exchange. Open orders are listed for only the exchange identified by SecurityExchange (Tag 207). |
| | | 7 = All. All open orders are listed. |
5000 | OrdStatusReqType | N | Order Status Request Type within the context of MassStatusReqType (Tag 585). Valid values are: |
| | | 100 = User. Open orders pertaining to UserName (Tag 553) are listed. Only available in Multi-Trader mode for requests originated from Master User. |
| | | 101 = Account. Open orders pertaining to Account (Tag 1) are listed. |
1 | Account | N | Account for the optional OrdStatusReqType (Tag 5000). If not specified, open orders for all accounts are listed. |
207 | SecurityExchange | N | Specific Security Exchange requested for the Exchange MassStatusReqType (Tag 585=5). |
55 | Symbol | N | Specific Symbol requested for the Contract MassStatusReqType (Tag 585=3) |
48 | SecurityID | N | Specific SecurityID requested for the Market MassStatusReqType (Tag 585=1) |
553 | UserName | N | User Name for the optional OrdStatusReqType (Tag 5000). If not specified, open orders for all users are listed. Only valid in Multi-Trader mode. |
59 | TimeInForce | N | Specifies how long the order remains in effect. Valid values are: |
| | | 0 = Day |
| | | 1 = Good Until Cancel |
| | | 3 = Immediate or Cancel |
| | | 4 = Fill Or Kill |
60 | TransactTime | Y | Time the order mass status request was submitted. Specified in UTC form. |
1028 | ManualOrderIndicator | N | Indicates if the order was sent Manually (i.e. order action is immediate from a human). Valid values are: |
| | | Y = Order was entered Manually |
| | | N = Order was entered by an Automated System, Program or Algorithm |
| Standard Trailer | Y |
Sample MessagesListing all open orders:
1 - ORDERMASSSTATUSREQUEST
34=32|49=T4Test|56=test|52=20160721-17:44:19.370|584=msri-07-21-2016-12:44:19.3706427|585=7|59=0|60=20160721-17:44:19.370|
[21-Jul-2016] 12:44:19.3726972
[MsgSeqNum] 34 = 32
[SenderCompID] 49 = T4Test
[TargetCompID] 56 = test
[SendingTime] 52 = 20160721-17:44:19.370
[MassStatusReqID] 584 = msri-07-21-2016-12:44:19.3706427
[MassStatusReqType] 585 = 7 (ALL)
[TimeInForce] 59 = 0 (DAY)
[TransactTime] 60 = 20160721-17:44:19.370
2 - EXECUTIONREPORT
34=71|49=test|56=T4Test|50=T4FIX|52=20160721-17:44:19.372|143=US,IL|97=Y|1=Account1|11=fn-636047018544844180|17=607DB8AC-B3EE-4579-9260-4D1946C446BD_2_U|150=I|37=607DB8AC-B3EE-4579-9260-4D1946C446BD|39=0|48=XCME_C ZC (U16)|55=ZC|207=CME_C|200=201609|59=0|107=Corn Sep16|54=1|167=FUT|38=1|40=2|44=34050|912=N|60=20160721-17:44:17.476|21=1|204=0|584=msri-07-21-2016-12:44:19.3706427|
[21-Jul-2016] 12:44:19.3729367
[MsgSeqNum] 34 = 71
[SenderCompID] 49 = test
[TargetCompID] 56 = T4Test
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20160721-17:44:19.372
[TargetLocationID] 143 = US,IL
[PossResend] 97 = Y (YES)
[Account] 1 = Account1
[ClOrdID] 11 = fn-636047018544844180
[ExecID] 17 = 607DB8AC-B3EE-4579-9260-4D1946C446BD_2_U
[ExecType] 150 = I (ORDER_STATUS)
[OrderID] 37 = 607DB8AC-B3EE-4579-9260-4D1946C446BD
[OrdStatus] 39 = 0 (NEW)
[SecurityID] 48 = XCME_C ZC (U16)
[Symbol] 55 = ZC
[SecurityExchange] 207 = CME_C
[MaturityMonthYear] 200 = 201609
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = Corn Sep16
[Side] 54 = 1 (BUY)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 34050
[LastRptRequested] 912 = N (NO)
[TransactTime] 60 = 20160721-17:44:17.476
[HandlInst] 21 = 1 (AUTOMATED_EXECUTION_NOBROKER)
[CustomerOrFirm] 204 = 0 (CUSTOMER)
[MassStatusReqID] 584 = msri-07-21-2016-12:44:19.3706427
3 - EXECUTIONREPORT
34=72|49=test|56=T4Test|50=T4FIX|52=20160721-17:44:19.372|143=US,IL|97=Y|1=Account1|11=fn-636046978602258221|17=B5F1A5EB-ECA0-4E24-826B-6F57542D0829_3_U|150=I|37=B5F1A5EB-ECA0-4E24-826B-6F57542D0829|39=0|48=XCME_Eq ES (U16)|55=ES|207=CME_Eq|200=201609|59=0|107=E-mini S&P 500 Sep16|54=2|167=FUT|38=1|40=2|44=214950|912=N|60=20160721-16:37:43.137|21=1|204=0|584=msri-07-21-2016-12:44:19.3706427|
[21-Jul-2016] 12:44:19.3730290
[MsgSeqNum] 34 = 72
[SenderCompID] 49 = test
[TargetCompID] 56 = T4Test
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20160721-17:44:19.372
[TargetLocationID] 143 = US,IL
[PossResend] 97 = Y (YES)
[Account] 1 = Account1
[ClOrdID] 11 = fn-636046978602258221
[ExecID] 17 = B5F1A5EB-ECA0-4E24-826B-6F57542D0829_3_U
[ExecType] 150 = I (ORDER_STATUS)
[OrderID] 37 = B5F1A5EB-ECA0-4E24-826B-6F57542D0829
[OrdStatus] 39 = 0 (NEW)
[SecurityID] 48 = XCME_Eq ES (U16)
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[MaturityMonthYear] 200 = 201609
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = E-mini S&P 500 Sep16
[Side] 54 = 2 (SELL)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 214950
[LastRptRequested] 912 = N (NO)
[TransactTime] 60 = 20160721-16:37:43.137
[HandlInst] 21 = 1 (AUTOMATED_EXECUTION_NOBROKER)
[CustomerOrFirm] 204 = 0 (CUSTOMER)
[MassStatusReqID] 584 = msri-07-21-2016-12:44:19.3706427
4 - EXECUTIONREPORT
34=73|49=test|56=T4Test|50=T4FIX|52=20160721-17:44:19.373|97=Y|1=Account2|11=fn-636046979248572065|17=DBE4D731-AD6F-473B-9500-3E4CC0922526_3_U|150=I|37=DBE4D731-AD6F-473B-9500-3E4CC0922526|39=0|48=D_F_F_20160900|55=F|207=D_F|200=201609|59=0|107=D-Financial (00:00) Sep16|54=2|167=FUT|38=1|40=2|44=13800|912=Y|60=20160721-16:38:47.748|21=1|204=0|584=msri-07-21-2016-12:44:19.3706427|
[21-Jul-2016] 12:44:19.3731161
[MsgSeqNum] 34 = 73
[SenderCompID] 49 = test
[TargetCompID] 56 = T4Test
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20160721-17:44:19.373
[PossResend] 97 = Y (YES)
[Account] 1 = Account2
[ClOrdID] 11 = fn-636046979248572065
[ExecID] 17 = DBE4D731-AD6F-473B-9500-3E4CC0922526_3_U
[ExecType] 150 = I (ORDER_STATUS)
[OrderID] 37 = DBE4D731-AD6F-473B-9500-3E4CC0922526
[OrdStatus] 39 = 0 (NEW)
[SecurityID] 48 = D_F_F_20160900
[Symbol] 55 = F
[SecurityExchange] 207 = D_F
[MaturityMonthYear] 200 = 201609
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = D-Financial (00:00) Sep16
[Side] 54 = 2 (SELL)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 13800
[LastRptRequested] 912 = Y (YES)
[TransactTime] 60 = 20160721-16:38:47.748
[HandlInst] 21 = 1 (AUTOMATED_EXECUTION_NOBROKER)
[CustomerOrFirm] 204 = 0 (CUSTOMER)
[MassStatusReqID] 584 = msri-07-21-2016-12:44:19.3706427
Listing open orders for a specific market:
1 - ORDERMASSSTATUSREQUEST
34=22|49=T4Test|56=test|52=20160721-17:41:37.053|584=msri-07-21-2016-12:41:37.0530039|585=1|48=XCME_Eq ES (U16)|59=0|60=20160721-17:41:37.053|
[21-Jul-2016] 12:41:37.0547610
[MsgSeqNum] 34 = 22
[SenderCompID] 49 = T4Test
[TargetCompID] 56 = test
[SendingTime] 52 = 20160721-17:41:37.053
[MassStatusReqID] 584 = msri-07-21-2016-12:41:37.0530039
[MassStatusReqType] 585 = 1 (MARKET)
[SecurityID] 48 = XCME_Eq ES (U16)
[TimeInForce] 59 = 0 (DAY)
[TransactTime] 60 = 20160721-17:41:37.053
2 - EXECUTIONREPORT
34=60|49=test|56=T4Test|50=T4FIX|52=20160721-17:41:37.054|143=US,IL|97=Y|1=Account1|11=fn-636046978602258221|17=B5F1A5EB-ECA0-4E24-826B-6F57542D0829_3_U|150=I|37=B5F1A5EB-ECA0-4E24-826B-6F57542D0829|39=0|48=XCME_Eq ES (U16)|55=ES|207=CME_Eq|200=201609|59=0|107=E-mini S&P 500 Sep16|54=2|167=FUT|38=1|40=2|44=214950|912=Y|60=20160721-16:37:43.137|21=1|204=0|584=msri-07-21-2016-12:41:37.0530039|
[21-Jul-2016] 12:41:37.0549716
[MsgSeqNum] 34 = 60
[SenderCompID] 49 = test
[TargetCompID] 56 = T4Test
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20160721-17:41:37.054
[TargetLocationID] 143 = US,IL
[PossResend] 97 = Y (YES)
[Account] 1 = Account1
[ClOrdID] 11 = fn-636046978602258221
[ExecID] 17 = B5F1A5EB-ECA0-4E24-826B-6F57542D0829_3_U
[ExecType] 150 = I (ORDER_STATUS)
[OrderID] 37 = B5F1A5EB-ECA0-4E24-826B-6F57542D0829
[OrdStatus] 39 = 0 (NEW)
[SecurityID] 48 = XCME_Eq ES (U16)
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[MaturityMonthYear] 200 = 201609
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = E-mini S&P 500 Sep16
[Side] 54 = 2 (SELL)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 214950
[LastRptRequested] 912 = Y (YES)
[TransactTime] 60 = 20160721-16:37:43.137
[HandlInst] 21 = 1 (AUTOMATED_EXECUTION_NOBROKER)
[CustomerOrFirm] 204 = 0 (CUSTOMER)
[MassStatusReqID] 584 = msri-07-21-2016-12:41:37.0530039
Listing open orders for a specific account:
1 - ORDERMASSSTATUSREQUEST
34=2|49=T4Test|56=test|52=20160721-17:33:55.753|584=msri-07-21-2016-12:33:55.7537682|585=7|5000=101|1=Account1|59=0|60=20160721-17:33:55.753|
[21-Jul-2016] 12:33:55.7562146
[MsgSeqNum] 34 = 2
[SenderCompID] 49 = T4Test
[TargetCompID] 56 = test
[SendingTime] 52 = 20160721-17:33:55.753
[MassStatusReqID] 584 = msri-07-21-2016-12:33:55.7537682
[MassStatusReqType] 585 = 7 (ALL)
[OrdStatusReqType] 5000 = 101 (ACCOUNT)
[Account] 1 = Account1
[TimeInForce] 59 = 0 (DAY)
[TransactTime] 60 = 20160721-17:33:55.753
2 - EXECUTIONREPORT
34=40|49=test|56=T4Test|50=T4FIX|52=20160721-17:33:55.756|143=US,IL|97=Y|1=Account1|11=fn-636046978602258221|17=B5F1A5EB-ECA0-4E24-826B-6F57542D0829_3_U|150=I|37=B5F1A5EB-ECA0-4E24-826B-6F57542D0829|39=0|48=XCME_Eq ES (U16)|55=ES|207=CME_Eq|200=201609|59=0|107=E-mini S&P 500 Sep16|54=2|167=FUT|38=1|40=2|44=214950|912=Y|60=20160721-16:37:43.137|21=1|204=0|584=msri-07-21-2016-12:33:55.7537682|
[21-Jul-2016] 12:33:55.7564302
[MsgSeqNum] 34 = 40
[SenderCompID] 49 = test
[TargetCompID] 56 = T4Test
[SenderSubID] 50 = T4FIX
[SendingTime] 52 = 20160721-17:33:55.756
[TargetLocationID] 143 = US,IL
[PossResend] 97 = Y (YES)
[Account] 1 = Account1
[ClOrdID] 11 = fn-636046978602258221
[ExecID] 17 = B5F1A5EB-ECA0-4E24-826B-6F57542D0829_3_U
[ExecType] 150 = I (ORDER_STATUS)
[OrderID] 37 = B5F1A5EB-ECA0-4E24-826B-6F57542D0829
[OrdStatus] 39 = 0 (NEW)
[SecurityID] 48 = XCME_Eq ES (U16)
[Symbol] 55 = ES
[SecurityExchange] 207 = CME_Eq
[MaturityMonthYear] 200 = 201609
[TimeInForce] 59 = 0 (DAY)
[SecurityDesc] 107 = E-mini S&P 500 Sep16
[Side] 54 = 2 (SELL)
[SecurityType] 167 = FUT (FUTURE)
[OrderQty] 38 = 1
[OrdType] 40 = 2 (LIMIT)
[Price] 44 = 214950
[LastRptRequested] 912 = Y (YES)
[TransactTime] 60 = 20160721-16:37:43.137
[HandlInst] 21 = 1 (AUTOMATED_EXECUTION_NOBROKER)
[CustomerOrFirm] 204 = 0 (CUSTOMER)
[MassStatusReqID] 584 = msri-07-21-2016-12:33:55.7537682
FIX API Home Page.